Two-dimensional (2D) computer graphics refers to the computer-based generation of digital images from 2D models, e.g., text, digital images, etc., based upon a 2D representation of geometric data. Manipulating 2D media, such as a digital image representing text, may involve manipulation, via, e.g., a graphical media editing/creation tool, in the XY plane. That is, 2D media may be modified and/or manipulated by 2D geometric transformations. Transformations in the mathematical sense refer to any function mapping a set X on to another set/to itself, where the set X may have additional algebraic or geometric structure. Examples of transformations include, but are not limited to rotation, scaling, and translation. Thus, from a computer graphics perspective, the transformation of a 2D object may involve one or more of the following: “rotating” or spinning the 2D object around a fixed point in the XY plane; “scaling” or enlarging/diminishing the 2D object by the same scale factor in the X and Y directions; and “translating” or moving every point of the 2D object by some fixed distance in the same direction within the XY plane.
In contrast, 3D computer graphics utilize a 3D representation of geometrical data, where, in addition to having a width and height and being manipulatable along the X and Y axes, an object has depth or a third dimension known as the Z axis. Accordingly, manipulating 3D graphical objects, such as effectuating transformations, involves one or more of the X, Y, and Z axes. Controlling the direction of transformations in 3D space requires identifying a subset of at most, two axes (i.e., X and Y, Y and Z, or X and Z) of the three possible axes to operate on. This is because most conventional control devices (e.g., computer mice, or touch screens) only operate in 2D, i.e., the X and Y axes.
Performing transformations on objects in a graphical media editing/creation tool may be based upon a bounding box. In geometry, a bounding box refers to a minimum/smallest or enclosing box within which all points of an object(s) lie. In the context of computer graphics, a bounding box may be thought of as a rectangular border around, e.g., an image, shape, or text, that a user may metaphorically utilize to perform a transformation. That is, a user may drag an edge or control point located at the corners or center of edges (known as a handle) of a bounding box to translate, scale, or rotate an object or perform various custom manipulations such as skew, changing the extrusion depth or bevel settings, or other geometric deformations, etc.